#pragma once
#include "mkvmuxinpin.hpp"

namespace MkvMux
{

class InpinAudio : public Inpin
{
    InpinAudio(const InpinAudio&);
    InpinAudio& operator=(const InpinAudio&);
    
public:

    explicit InpinAudio(Filter*);
    ~InpinAudio();
    
    void Final();

    HRESULT STDMETHODCALLTYPE QueryAccept(const AM_MEDIA_TYPE*);
    HRESULT STDMETHODCALLTYPE GetAllocatorRequirements(ALLOCATOR_PROPERTIES*);

protected:

   HRESULT OnInit();
   HRESULT OnReceiveConnection(IPin*, const AM_MEDIA_TYPE&);
   //HRESULT OnReceive(IMediaSample*);
   //HRESULT OnEndOfStream();

};
    
}  //end namespace MkvMux
